package cn.iocoder.yudao.module.carbon.convert.gase;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.carbon.api.gas.dto.GasRespDTO;
import cn.iocoder.yudao.module.carbon.controller.admin.gase.vo.GaseCreateReqVO;
import cn.iocoder.yudao.module.carbon.controller.admin.gase.vo.GaseExcelVO;
import cn.iocoder.yudao.module.carbon.controller.admin.gase.vo.GaseRespVO;
import cn.iocoder.yudao.module.carbon.controller.admin.gase.vo.GaseUpdateReqVO;
import cn.iocoder.yudao.module.carbon.dal.dataobject.gase.GaseDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 温室气体 Convert
 *
 * @author StevenShen
 */
@Mapper
public interface GaseConvert {

    GaseConvert INSTANCE = Mappers.getMapper(GaseConvert.class);

    GaseDO convert(GaseCreateReqVO bean);

    GaseDO convert(GaseUpdateReqVO bean);

    GaseRespVO convert(GaseDO bean);

    List<GaseRespVO> convertList(List<GaseDO> list);

    PageResult<GaseRespVO> convertPage(PageResult<GaseDO> page);

    List<GaseExcelVO> convertList02(List<GaseDO> list);

    List<GasRespDTO> convertList03(List<GaseDO> gaseList);

}
